package com.yutons.encrypt.cryptor;

/**
 * @Title 加解密及脱敏接口
 * @Author yutons
 * @Date 2024-07-10 9:13
 * @Desc
 */
public interface IMpEncrypt {
	/**
	 * 加密接口
	 *
	 * @param paramsObject   mapper中paramsType的实例
	 * @param <T>            入参类型
	 * @return 返回加密
	 * @throws IllegalAccessException 字段不可访问异常
	 */
	<T> T encrypt(T paramsObject) throws IllegalAccessException;

	/**
	 * 解密接口
	 *
	 * @param result resultType的实例
	 * @param <T>    入参类型
	 * @return 返回解密
	 * @throws IllegalAccessException 字段不可访问异常
	 */
	<T> T decrypt(T result) throws IllegalAccessException;
}
